home *** CD-ROM | disk | FTP | other *** search
- #!../blt_wish
-
- if [file exists ../library] {
- set blt_library ../library
- }
- option add *Blt_htext.Font *Times-Bold-R*14*
- option add *graph.xTitle "X Axis Label"
- option add *graph.yTitle "Y Axis Label"
- option add *graph.title "A Simple XY Graph"
- option add *graph.elemBackground red
-
- set visual [winfo screenvisual .]
- if { $visual != "staticgray" } {
- option add *print.background yellow
- option add *quit.background red
- }
-
-
- proc ConfigureGraph { interp graph } {
- exec ../blt_wish -name GraphConfig -f ./grconf.tcl $interp $graph &
- }
-
- set remote {}
- global graph
- set graph .graph
- blt_htext .header -text {%%
- %%This is an example of the blt_graph widget. It displays two-variable
- data with assorted line attributes and symbols. The graph itself has
- many components; x and y axis, legend, crosshairs, elements, etc.
- You can configure any component by pressing this %%
- button $blt_htext(widget).config -text button -bg green \
- -command [list ConfigureGraph [winfo name .] $graph]
- $blt_htext(widget) append $blt_htext(widget).config
- %%.
-
- To create a postscript file "xy.ps", press the %%
- button $blt_htext(widget).print -text print -command {
- .graph postscript xy.ps -pagewidth 6.5i -pageheight 9i -landscape true
- }
- $blt_htext(widget) append $blt_htext(widget).print
- %% button.}
-
- blt_graph $graph
-
- blt_htext .footer -text {Hit the %%
- button $blt_htext(widget).quit -text quit -command {
- catch "send GraphConfig after 1 exit"
- destroy .
- }
- $blt_htext(widget) append $blt_htext(widget).quit
- %% button when you've seen enough.%%
- label $blt_htext(widget).logo -bitmap BLT
- $blt_htext(widget) append $blt_htext(widget).logo -padx 20
- %%}
-
- set X {
- 2.00000e-01 4.00000e-01 6.00000e-01 8.00000e-01 1.00000e+00
- 1.20000e+00 1.40000e+00 1.60000e+00 1.80000e+00 2.00000e+00
- 2.20000e+00 2.40000e+00 2.60000e+00 2.80000e+00 3.00000e+00
- 3.20000e+00 3.40000e+00 3.60000e+00 3.80000e+00 4.00000e+00
- 4.20000e+00 4.40000e+00 4.60000e+00 4.80000e+00 5.00000e+00
- }
-
- set Y1 {
- 1.14471e+01 2.09373e+01 2.84608e+01 3.40080e+01 3.75691e+01
- 3.91345e+01 3.92706e+01 3.93474e+01 3.94242e+01 3.95010e+01
- 3.95778e+01 3.96545e+01 3.97313e+01 3.98081e+01 3.98849e+01
- 3.99617e+01 4.00384e+01 4.01152e+01 4.01920e+01 4.02688e+01
- 4.03455e+01 4.04223e+01 4.04990e+01 4.05758e+01 4.06526e+01
- }
-
- set Y2 {
- 2.61825e+01 5.04696e+01 7.28517e+01 9.33192e+01 1.11863e+02
- 1.28473e+02 1.43140e+02 1.55854e+02 1.66606e+02 1.75386e+02
- 1.82185e+02 1.86994e+02 1.89802e+02 1.90683e+02 1.91047e+02
- 1.91411e+02 1.91775e+02 1.92139e+02 1.92503e+02 1.92867e+02
- 1.93231e+02 1.93595e+02 1.93958e+02 1.94322e+02 1.94686e+02
- }
-
- set Y3 {
- 4.07008e+01 7.95658e+01 1.16585e+02 1.51750e+02 1.85051e+02
- 2.16479e+02 2.46024e+02 2.73676e+02 2.99427e+02 3.23267e+02
- 3.45187e+02 3.65177e+02 3.83228e+02 3.99331e+02 4.13476e+02
- 4.25655e+02 4.35856e+02 4.44073e+02 4.50294e+02 4.54512e+02
- 4.56716e+02 4.57596e+02 4.58448e+02 4.59299e+02 4.60151e+02
- }
-
- $graph element create line1 -xdata $X -ydata $Y2 \
- -symbol cross -linewidth 1
- $graph element create line2 -xdata $X -ydata $Y3 \
- -symbol square -linewidth 1
- $graph element create line3 -xdata $X -ydata $Y1 \
- -symbol plus -linewidth 1
-
- #$graph crosshairs set on
-
- pack append . \
- .header { padx 20 pady 10 } \
- .graph {} \
- .footer { padx 20 pady 10 }
-
- wm min . 0 0
-
- source features.tcl
- #SetCrosshairs $graph
- SetActiveLegend $graph
- SetClosestPoint $graph
- SetZoom $graph
-
- wm min . 0 0
-
-